/*
Copyright 2011 Francisco Nieto Raya

This program is free software: you can redistribute it and/or modify it under the terms of the Apache Software License 
as published by the Free Software Foundation, either version 2.0 of the License, or (at your option) any later version.

This software consists of voluntary contributions made by many individuals on behalf of the Apache Software Foundation.
For more information on the Apache Software Foundation, please see <http://www.apache.org/>.

*/

#include <stdio.h>
#include <stdlib.h>
#include "gd.h"
#include "imag.h"

/* Este programa permite crear una imagen de dimensiones entre 3 y 11
   a la que se le introducen los valores de rojo, verde y azul a los 
   pixeles y guardar la en una imagen creada por el programa que 
   recibe el nombre que ha sido pasado como parametro. Este recibe :
   el nombre del programa, el nombre de la imagen en la que se guarda
   el resultado, el tamaño en filas y en columnas */

int main(int argc,char *argv[]){
    int y1,x1,fil,col;
    gdImagePtr I;
    imagen *img;
    if (argc<3){
       perror ("El formato es: %s nom.programa %s nom fichero %s tamaño filas %s tamaño columnas");
       exit(1);            
    }
    fil=atoi(argv[2]);
    col=atoi(argv[3]);
    x1=fil;
    y1=col;
    x1=fil%2;
    y1=col%2;
    if ((x1==0)||(y1==0)){
       perror ("el tamaño de las filas y las columnas ha de ser impar");           
       exit (1);
    }
    if ((fil<3)||(fil>11)||(col<3)||(col>11)){
       perror ("el tamaño a de ser impar entre 3 y 11");
       exit(1);
    }
    img=crearImg(fil,col);
    rellenar_imagen(fil,col,img);
    I=deImagen(img);
    liberarImagen(img);
    escribirImagen(argv[1],I);
    gdImageDestroy(I);
    return 0;
}
    
